﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Windows.Input;

namespace PresentacionEscritorio
{
    public partial class Form1 : Form
    {
        frmMdiContainer myMdi;

        public Form1()
        {
            InitializeComponent();
        }

        #region Menu
        #region MenuPacientes
        private void altaDePacienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarPaciente formRegPaciente = new frmRegistrarPaciente();
            formRegPaciente.MdiParent = myMdi;
            formRegPaciente.setOpcion(Opcion.OpRegistrar);
            formRegPaciente.Show();
            myMdi.Show();
        }

        private void consultarPacientesToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarPaciente formConsPaciente = new frmConsultarPaciente();
            formConsPaciente.MdiParent = myMdi;
            formConsPaciente.setOpcion(Opcion.OpConsultar);
            formConsPaciente.Show();
            myMdi.Show();
        }

        private void modificarDatosPacienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarPaciente formConsPaciente = new frmConsultarPaciente();
            formConsPaciente.MdiParent = myMdi;
            formConsPaciente.setOpcion(Opcion.OpModificar);
            formConsPaciente.Show();
            myMdi.Show();
        }

        private void registrarInactividadPacienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarPaciente formConsPaciente = new frmConsultarPaciente();
            formConsPaciente.MdiParent = myMdi;
            formConsPaciente.setOpcion(Opcion.OpDarBaja);
            formConsPaciente.Show();
            myMdi.Show();
        }
        #endregion

        #region MenuInstituciones
        private void altaInstituciónToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarInstitución formAltaInst = new frmRegistrarInstitución();
            formAltaInst.MdiParent = myMdi;
            formAltaInst.setOpcion(Opcion.OpRegistrar);
            formAltaInst.Show();
            myMdi.Show();
        }

        private void consultarInstituciónToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarInstitución formConsInst = new frmConsultarInstitución();
            formConsInst.MdiParent = myMdi;
            formConsInst.setOpcion(Opcion.OpConsultar);
            formConsInst.Show();
            myMdi.Show();
        }

        private void modificarDatosInstituciónToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarInstitución formConsInst = new frmConsultarInstitución();
            formConsInst.MdiParent = myMdi;
            formConsInst.setOpcion(Opcion.OpModificar);
            formConsInst.Show();
            myMdi.Show();
        }

        private void registrarBajaInstituciónToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarInstitución formConsInst = new frmConsultarInstitución();
            formConsInst.MdiParent = myMdi;
            formConsInst.setOpcion(Opcion.OpConsultar);
            formConsInst.Show();
            myMdi.Show();
        }
        #endregion

        #region MenuAfiliaciones
        private void pacienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarAfiliacion formRegAfiliacionPaciente = new frmRegistrarAfiliacion();
            formRegAfiliacionPaciente.setOpcion(Opcion.OpRegistrar);
            formRegAfiliacionPaciente.MdiParent = myMdi;
            formRegAfiliacionPaciente.Show();
            myMdi.Show();
        }

        private void institucionToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //if (myMdi.IsDisposed)
            //    myMdi = new frmMdiContainer();
            //frmRegistrarAfiliacionInstitucion formRegAfiliacionInstitucion = new frmRegistrarAfiliacionInstitucion();
            //formRegAfiliacionInstitucion.setOpcion(Opcion.OpRegistrar);
            //formRegAfiliacionInstitucion.MdiParent = myMdi;
            //formRegAfiliacionInstitucion.Show();
            //myMdi.Show();
        }

        private void consultarAfiliadoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarAfiliado formConsAfiliado = new frmConsultarAfiliado();
            formConsAfiliado.MdiParent = myMdi;
            formConsAfiliado.setOpcion(Opcion.OpConsultar);
            formConsAfiliado.Show();
            myMdi.Show();
        }

        private void registrarBajaAfiliadoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarBajaAfiliacion formBajaAfiliado = new frmRegistrarBajaAfiliacion();
            formBajaAfiliado.MdiParent = myMdi;
            formBajaAfiliado.setOpcion(Opcion.OpDarBaja);
            formBajaAfiliado.Show();
            myMdi.Show();
        }

        //ver!!!
        private void consultarEstadoDeCuentaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            //ver que NO existe el form para consultar el estado de cuenta del afiliado
            frmConsultarAfiliado formConsEstadoCuentaAf = new frmConsultarAfiliado();
            formConsEstadoCuentaAf.Show();
        }
        #endregion

        #region MenuEspecialidades
        private void registrarEspecialidadToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidad formEsp = new frmRegistrarEspecialidad();
            formEsp.MdiParent = myMdi;
            formEsp.setOpcion(Opcion.OpRegistrar);
            formEsp.Show();
            myMdi.Show();
        }

        private void consultarEspecialidadToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarEspecialidad formConsEsp = new frmConsultarEspecialidad();
            formConsEsp.setOpcion(Opcion.OpConsultar);
            formConsEsp.MdiParent = myMdi;
            formConsEsp.Show();
            myMdi.Show();
        }

        private void modificarEspecialidadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarEspecialidad formConsEsp = new frmConsultarEspecialidad();
            formConsEsp.setOpcion(Opcion.OpModificar);
            formConsEsp.MdiParent = myMdi;
            formConsEsp.Show();
            myMdi.Show();
        }

        private void darDeBajaEspecialidadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarEspecialidad formConsEsp = new frmConsultarEspecialidad();
            formConsEsp.setOpcion(Opcion.OpDarBaja);
            formConsEsp.MdiParent = myMdi;
            formConsEsp.Show();
            myMdi.Show();
        }
        #endregion

        #region MenuProfesionales
        private void altaProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarProfesional formRegProfesional = new frmRegistrarProfesional();
            formRegProfesional.setOpcion(Opcion.OpRegistrar);
            formRegProfesional.MdiParent = myMdi;
            formRegProfesional.Show();
            myMdi.Show();
        }

        private void consultarDatosProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarProfesional formConsProfesional = new frmConsultarProfesional();
            formConsProfesional.setOpcion(Opcion.OpConsultar);
            formConsProfesional.MdiParent = myMdi;
            formConsProfesional.Show();
            myMdi.Show();
        }

        private void modificarDatosProfesionalToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarProfesional formConsProfesional = new frmConsultarProfesional();
            formConsProfesional.setOpcion(Opcion.OpModificar);
            formConsProfesional.MdiParent = myMdi;
            formConsProfesional.Show();
            myMdi.Show();
        }

        private void darDeBajaProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarProfesional formConsProfesional = new frmConsultarProfesional();
            formConsProfesional.setOpcion(Opcion.OpDarBaja);
            formConsProfesional.MdiParent = myMdi;
            formConsProfesional.Show();
            myMdi.Show();
        }

        private void asignarNuevaEspecialidadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            formRegEspXMed.setOpcion(Opcion.OpRegistrar);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }

        private void consultarEspecialidadesToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            formRegEspXMed.setOpcion(Opcion.OpConsultar);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }

        private void darDeBajaEspecialidadProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            formRegEspXMed.setOpcion(Opcion.OpDarBaja);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }


        //completar menu nuevo horario de atencion
        private void nuevoHorarioAtencionToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            //formRegEspXMed.setOpcion(Opcion.OpDarBaja);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }
        private void consultarHorariosAtenciónToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            //formRegEspXMed.setOpcion(Opcion.OpDarBaja);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }
        private void modificarHorariosDeAtencionToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            //formRegEspXMed.setOpcion(Opcion.OpDarBaja);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }
        #endregion

        #region MenuTurnos
        private void generarAgendaDeTurnosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmGenerarAgendaTurnos formGenerarTurno = new frmGenerarAgendaTurnos();
            formGenerarTurno.MdiParent = myMdi;
            formGenerarTurno.setOpcion(Opcion.OpRegistrar);
            formGenerarTurno.Show();
            myMdi.Show();
        }

        private void consultarTurnoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmGestionTurnos2 formTurnos = new frmGestionTurnos2();
            formTurnos.MdiParent = myMdi;
            formTurnos.Show();
            myMdi.Show();
        }
        #endregion
        #endregion

        #region contextMenuPacientes
        private void altaPacienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarPaciente formRegPaciente = new frmRegistrarPaciente();
            formRegPaciente.MdiParent = myMdi;
            formRegPaciente.setOpcion(Opcion.OpRegistrar);
            formRegPaciente.Show();
            myMdi.Show();
        }

        private void consultarPacienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarPaciente formConsPaciente = new frmConsultarPaciente();
            formConsPaciente.MdiParent = myMdi;
            formConsPaciente.setOpcion(Opcion.OpConsultar);
            formConsPaciente.Show();
            myMdi.Show();
        }

        private void modificarDatosPacienteToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarPaciente formConsPaciente = new frmConsultarPaciente();
            formConsPaciente.MdiParent = myMdi;
            formConsPaciente.setOpcion(Opcion.OpModificar);
            formConsPaciente.Show();
            myMdi.Show();
        }

        private void registrarInactividadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarPaciente formConsPaciente = new frmConsultarPaciente();
            formConsPaciente.MdiParent = myMdi;
            formConsPaciente.setOpcion(Opcion.OpDarBaja);
            formConsPaciente.Show();
            myMdi.Show();
        }
        #endregion

        #region ContextMenuTurnos
        private void consultarTurnosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmGestionTurnos2 formTurnos = new frmGestionTurnos2();
            formTurnos.MdiParent = myMdi;
            formTurnos.Show();
            myMdi.Show();
        }

        private void generarAgendaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmGenerarAgendaTurnos formGenerarTurno = new frmGenerarAgendaTurnos();
            formGenerarTurno.MdiParent = myMdi;
            formGenerarTurno.setOpcion(Opcion.OpRegistrar);
            formGenerarTurno.Show();
            myMdi.Show();
        }
        #endregion

        #region ContextMenuProfesionales
        private void registrarProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarProfesional formRegProfesional = new frmRegistrarProfesional();
            formRegProfesional.setOpcion(Opcion.OpRegistrar);
            formRegProfesional.MdiParent = myMdi;
            formRegProfesional.Show();
            myMdi.Show();
        }

        private void registrarEspecialidadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidad formEsp = new frmRegistrarEspecialidad();
            formEsp.MdiParent = myMdi;
            formEsp.setOpcion(Opcion.OpRegistrar);
            formEsp.Show();
            myMdi.Show();
        }

        //ver si o si, esta apuntando a cons especialidades!!!
        private void asignarHorarioAMédicoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmRegistrarEspecialidadPorMedico formRegEspXMed = new frmRegistrarEspecialidadPorMedico();
            formRegEspXMed.setOpcion(Opcion.OpConsultar);
            formRegEspXMed.MdiParent = myMdi;
            formRegEspXMed.Show();
            myMdi.Show();
        }

        private void consultarProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarProfesional formConsProfesional = new frmConsultarProfesional();
            formConsProfesional.setOpcion(Opcion.OpConsultar);
            formConsProfesional.MdiParent = myMdi;
            formConsProfesional.Show();
            myMdi.Show();
        }

        private void modificarDatosProfesionalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (myMdi.IsDisposed)
                myMdi = new frmMdiContainer();
            frmConsultarProfesional formConsProfesional = new frmConsultarProfesional();
            formConsProfesional.setOpcion(Opcion.OpModificar);
            formConsProfesional.MdiParent = myMdi;
            formConsProfesional.Show();
            myMdi.Show();
        }
        #endregion


        #region Buttons
        private void btnPacientes_Click(object sender, EventArgs e)
        {
            Point p = PointToClient(MousePosition); 
            contextMenuStripPacientes.Show(this, p);
        }

        private void btnTurnos_Click(object sender, EventArgs e)
        {
            Point p = PointToClient(MousePosition);
            contextMenuStripTurnos.Show(this, p);
        }

        private void btnAfiliaciones_Click(object sender, EventArgs e)
        {
            Point p = PointToClient(MousePosition);
            contextMenuStripAfiliaciones.Show(this, p);
        }

        private void btnMedicos_Click(object sender, EventArgs e)
        {
            Point p = PointToClient(MousePosition);
            contextMenuStripMedicos.Show(this, p);
        }

        private void btnCaja_Click(object sender, EventArgs e)
        {
            Point p = PointToClient(MousePosition);
            contextMenuStripCaja.Show(this, p);
        }

        private void btnCobros_Click(object sender, EventArgs e)
        {
            Point p = PointToClient(MousePosition);
            contextMenuStripCobros.Show(this, p);
        }
        #endregion

        private void Form1_Load(object sender, EventArgs e)
        {
            myMdi = new frmMdiContainer();
        }

        

        

        


        

































    }
}
